home *** CD-ROM | disk | FTP | other *** search
- unit AppLnchU;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- StdCtrls;
-
- type
- TForm1 = class(TForm)
- Button1: TButton;
- Button2: TButton;
- Edit1: TEdit;
- procedure Button1Click(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
- var
- Form1: TForm1;
-
- implementation
-
- {$R *.DFM}
-
- var
- PI: TProcessInformation;
-
- procedure TForm1.Button1Click(Sender: TObject);
- var
- SI: TStartupInfo;
- begin
- GetStartupInfo(SI);
- Win32Check(CreateProcess(nil, PChar(Edit1.Text), nil, nil,
- False, 0, nil, nil, SI, PI));
- WaitForInputIdle(PI.hProcess, Infinite);
- Button2.Enabled := True
- end;
-
- procedure TForm1.Button2Click(Sender: TObject);
- const
- Msgs: array[Boolean] of String =
- ('Stopped', 'Still running');
- var
- Flag: Boolean;
- begin
- Flag := WaitForSingleObject(PI.hProcess, 1) = Wait_TimeOut;
- ShowMessage(Msgs[Flag])
- end;
-
- end.
-